<html>
<head>
<title>README</title>
</head>
<body>

<h3>README - <i>Google Search Appliance Mobile Stylesheet</i></h3>

<p>
The <i>Google Search Appliance Mobile Stylesheet</i> defines a user interface for your Google Search Appliance to enable enterprise search by mobile workers.  It customizes the look and behavior of Google's search page and search results page for optimal viewing on handheld devices.  These devices typically have smaller screens and less memory and computational power than their PC counterparts.
</p>

<p>
The stylesheet is authored in XHTML-MP so that it is WAP 2.0 compliant.  The interface preserves Google Search Appliance features that are specifically relevant to enterprise search while also obeying many of the paradigms set forth by <a href="http://www.google.com/mobile/">Google Mobile Search</a>.
</p>

<h3>System Requirements</h3>
The following is all that is required to use this stylesheet:
<ul>
<li>Google Search Appliance 4.6.2.S.18 or later</li>
<li>A mobile viewing device capable of browsing XHTML Mobile Profile documents such as any WAP 2.0 compliant device</li>
</ul>

<h3>Contents</h3>

<table>
<tr>
<td>
<ul>
<li><code>readme.html</code></li>
<li><code>gsa_mobile_stylesheet.en.xsl</code></li>
<li><code>onebox_mobile.xsl</code></li>
</ul>
</td>
<td>&nbsp;&nbsp;&nbsp;</td>
<td valign=top>
<table cellspacing=0 cellpadding=0>
<tr><td> -- this file</td></tr>
<tr><td> -- mobile search stylesheet</td></tr>
<tr><td> -- mobile onebox stylesheet</td></tr>
</table>
</td>
</tr>
</table>

<h3>Notable Features</h3>

<ul>
<li>Accesskey navigation of search results</li>
<li>Search public and secure content</li>
<li>Related Queries / Spell Checker / KeyMatch</li>
<li>Sort search results by date</li>
<li>Cached text versions of all search result documents</li>
<li>Search within results</li>
<li>Compact snippets</li>
<li>OneBox for Enterprise</li>
<li>XHTML-MP 1.0 Markup is well formed and valid</li>
</ul>

<h3>How to Install</h3>

<p>
The Google Search Appliance provides support for multiple front end user interfaces to the same search engine.  We leverage that feature to add mobile support:
</p>

<ol>
<li>Add a new <i>Front End</i> using your Google Search Appliance's Admin Console.  See the <a href="https://support.google.com/enterprise/doc/gsa/4x/help/serve_frontends.html">documentation</a> on the Google Enterprise support site for details on how to do this.  Alternatively use the context sensitive help link in the <i>Serve -> Front Ends</i> section of your Admin Console.</li>

<li>Modify the new <i>Front End</i> by importing the given stylesheet, <code>gsa_mobile_stylesheet.en.xsl</code>.  See the <a href="https://support.google.com/enterprise/doc/gsa/4x/help/serve_output_xslt.html">documentation</a> for details on how to do this.  Alternatively click <i>Edit</i> for the new <i>Front End</i> and, on the <i>Format</i> tab, use the context sensitive help link for the <i>XSLT Stylesheet Editor</i>.</li>

<li>Use the Admin Console's <i>Test Center</i> to sanity check that the stylesheet and <i>Front End</i> have been set up correctly.  You should see a very neat and compact search interface and search results interface.</li>

<li>Publish the search URL to your new <i>Front End</i> for all of your mobile users.  To determine this URL:
<ol>
<li>Open a browser and navigate to your Google Search Appliance</li>
<li>Copy the (rewritten) URL from your browser address bar and paste into a text editor</li>
<li>Replace the values of the "client" and "proxystylesheet" parameters with the name of your new <i>Front End</i>.</li>
</ol>
We recommend having a default page on a separate web server redirect to this URL so that your mobile users only need to remember (or bookmark) the simple address of that web server (i.e.  <i>www.acme.com/mobilesearch</i>).
</li>

</ol>

<h3>A Note about OneBox</h3>

<p>
Typical <a href="http://code.google.com/enterprise/documentation/oneboxguide.html">Google OneBox for Enterprise</a> modules come packaged with their own XSL to define the display of the OneBox section of the search results page.  In many cases this styling will not be optimal for mobile device display.  To help remedy this try the following for each of your OneBox modules:
</p>

<ol>
<li>Create a duplicate OneBox module with a different name but with otherwise similar settings.  This will be your "mobile friendly" version of the original OneBox module.</li>
<li>Replace the XSL in the new module with that in the given <code>onebox_mobile.xsl</code> stylesheet.</li>
<li>Assign this new OneBox module to your mobile <i>Front End</i>.</li>
<li>Customize the XSL to recapture the look and feel intended by the OneBox author while remaining consistent with mobile display design principals.</li>
</ol>

<h3>Known Issues</h3>

<p>
<ul>
<li>Google Desktop integration is not provided.</li>
<li>Onebox results display is not vertically restricted. Please be kind.</li>
<li>Duplicate Directory filtering is not reflected by indenting. This is intentional.</li>
<li>To ensure markup validity, OneBox module result sets should be enclosed by <code>&lt;tr&gt;&lt;td&gt;</code>.</li>
<li>Cached and text version page validity is not guaranteed.</li>
<li>Advanced Search is not provided.</li>
<li>KeyMatch link display does not use http:// This is intentional as some mobile devices may otherwise treat them as additional links.</li>
<li>Result dates are not shown. Some mobile devices may otherwise treat them as phone numbers</li>
<li>Only the http scheme has been tested (not db or anything else).</li>
<li>Developers using collections will want to copy the collection list from a newly-edited default stylesheet and integrate into the mobile stylesheet. Use the format illustrated in "collection_menu" (and remove the example "default_collection" and "googleenterprise" entries once finished). To maintain well-formed, valid markup, do not alter the template's structure.</li>
<li>Feel free to customize the XSL but we recommended that the following stylesheet variables remain unchanged:<br/>
<pre>
  choose_bottom_navigation = "simple"
  choose_search_button = "text"
  choose_sep_bar = "nothing"
  res_keyword_color = ""
  res_keyword_format = ""
  res_keyword_size = ""
  search_box_size = "15"
  show_res_date = "0"
  show_top_navigation = "0"
  truncate_result_snippet_length = "80"
  truncate_result_title_length = "64"
  truncate_result_url_length = "36"
</pre>
</li>
</p>

&nbsp;

</body>
</html>
